function query({
    position,
    service,
    callback
}) {
    /* 1、确定查询结构 */
    var queryStruct = new Zondy.Service.QueryFeatureStruct();
    //是否包含几何图形信息
    queryStruct.IncludeGeometry = true;
    //是否包含属性信息
    queryStruct.IncludeAttribute = true;
    //是否包含图形显示参数
    queryStruct.IncludeWebGraphic = false;
    //2、指定查询规则
    var rule = new Zondy.Service.QueryFeatureRule({
        //是否将要素的可见性计算在内
        EnableDisplayCondition: false,
        //是否完全包含
        MustInside: false,
        //是否仅比较要素的外包矩形
        CompareRectOnly: false,
        //是否相交
        Intersect: true
    });
    //3、实例化查询参数对象
    //创建一个用于查询的点形状
    let pointObj = new Zondy.Object.Point2D(position[0], position[1]);
    //设置查询点的搜索半径
    pointObj.nearDis = 0.001;
    var queryParam = new Zondy.Service.QueryParameter({
        geometry: pointObj,
        resultFormat: "json",
        struct: queryStruct,
        rule: rule
    });
    //4、实例化地图文档查询服务对象
    var queryService = new Zondy.Service.QueryDocFeature(queryParam, service.name, service.layerId, {
        ip: "localhost",
        port: 6163,
    });
    //执行查询操作，querySuccess为查询回调函数
    queryService.query(querySuccess(callback));
}

function querySuccess(callback) {
    return function (data) {
        var format = new Zondy.Format.PolygonJSON();
        //将MapGIS要素JSON反序列化为ol.Feature类型数组
        var features = format.read(data);
        callback(features);
    }
}
export{query}